avcodec/libx265: unbreak build for X265_BUILD >= 213
authorGyan Doshi <ffmpeg@gyani.pro>
Sat, 5 Oct 2024 04:38:31 +0000 (10:08 +0530)
committerSebastian Ramacher <sramacher@debian.org>
Fri, 21 Feb 2025 12:16:27 +0000 (13:16 +0100)
Earlier, x265 made an API change to support alpha and
other multiple layer pictures. We added guards to accommodate
that in 1f801dfdb5

They have now reverted that API change in
https://bitbucket.org/multicoreware/x265_git/commits/78e5b703b1

Updated our wrapper guards to unbreak build again.

Gbp-Pq: Name 0007-avcodec-libx265-unbreak-build-for-X265_BUILD-213.patch

libavcodec/libx265.c

index 513f4733079dd9f57857c9637e15150a6efdcfe2..63cc497f835f095080e44ef065ed5ad38674636b 100644 (file)
@@ -661,7 +661,7 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
 {
     libx265Context *ctx = avctx->priv_data;
     x265_picture x265pic;
-#if X265_BUILD >= 210
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
     x265_picture x265pic_layers_out[MAX_SCALABLE_LAYERS];
     x265_picture* x265pic_lyrptr_out[MAX_SCALABLE_LAYERS];
 #else
@@ -805,7 +805,7 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
 #endif
     }
 
-#if X265_BUILD >= 210
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
     for (i = 0; i < MAX_SCALABLE_LAYERS; i++)
         x265pic_lyrptr_out[i] = &x265pic_layers_out[i];
 
@@ -844,7 +844,7 @@ static int libx265_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
             pkt->flags |= AV_PKT_FLAG_KEY;
     }
 
-#if X265_BUILD >= 210
+#if (X265_BUILD >= 210) && (X265_BUILD < 213)
     x265pic_out = x265pic_lyrptr_out[0];
 #else
     x265pic_out = &x265pic_solo_out;